Pridanie zaznamu do Paradox-u

Otázka od: bugi

19. 11. 2002 20:59

Vsetkych srdecne zdravim!

Mam na formulari DBGrid a nejake tlacitka. Ked stlacim tlacitko Pridaj,
otvori sa novy,
mensi formular s niekolkymi Editmi a tlacitkami Cancel a OK.

Po vyplneni tychto Editov udajmi a naslednom stlaceni tlacitka OK, by sa
mali tieto udaje zapisat do Databazy Paradox, ktora je prave otvorena a
nacitana v DBGride na hlavnom formulari.

Nejak mi to nefunguje, a nechcem to robit cez DBNavigator, poradte mi
prosim.

Ak mozete, poslite mi kusok kodu, nech si to mozem prejst.

-------------------------------------------------------------

Do jedneho z Editov na tom mensom formulari potrebujem vypisat pri
vytvarani formularu aktivne prihlaseneho uzivatela.
Ziskavam to funkciou

GetUserName

Ked si to dam vypisat cez zpravu, tak je to ok, ale ked urobim nasledovne

DBEdit1.Text := UserName;

nezobrazi sa v Edite uzivatel, ale natiahne uzivatela z aktivnej tabulky na
hlavnom formulari zo stlpca "Login".

Ako to mam riesit?


Dakujem,
                    alex



Delphi 3 Client/Server Suite - Win2000 Prof Cz


Odpovedá: Ján Harman

19. 11. 2002 22:22

Predpokladejme ze mas v hlavnim formu TTable, muzes i takhle:
MainForm.Table1.AppendRecord([Edit1.Text, Edit2.Text...]);

Pokud mas na hlavnim formu TQuery tak napr:
With MainForm.Query1.SQL do begin
    Clear;
    Add ('insert into "tabulka" Values.... pridej hodnoty z editu v poradi v
jakem jsou sloupce v tabulce definovany.
    ExecSQL;
end;

> Vsetkych srdecne zdravim!
>
> Mam na formulari DBGrid a nejake tlacitka. Ked stlacim tlacitko Pridaj,
> otvori sa novy,
> mensi formular s niekolkymi Editmi a tlacitkami Cancel a OK.
>
> Po vyplneni tychto Editov udajmi a naslednom stlaceni tlacitka OK, by sa
> mali tieto udaje zapisat do Databazy Paradox, ktora je prave otvorena a
> nacitana v DBGride na hlavnom formulari.
>
> Nejak mi to nefunguje, a nechcem to robit cez DBNavigator, poradte mi
> prosim.
>
> Ak mozete, poslite mi kusok kodu, nech si to mozem prejst.
>
> -------------------------------------------------------------
>
> Do jedneho z Editov na tom mensom formulari potrebujem vypisat pri
> vytvarani formularu aktivne prihlaseneho uzivatela.
> Ziskavam to funkciou
>
> GetUserName
>
> Ked si to dam vypisat cez zpravu, tak je to ok, ale ked urobim nasledovne
>
> DBEdit1.Text := UserName;
>
> nezobrazi sa v Edite uzivatel, ale natiahne uzivatela z aktivnej tabulky
na
> hlavnom formulari zo stlpca "Login".
>
> Ako to mam riesit?
>
>
> Dakujem,
> alex
>
>
>
> Delphi 3 Client/Server Suite - Win2000 Prof Cz
>
>
>
>
>
>

Odpovedá: Peter Ondras

19. 11. 2002 22:48

>:
>: Vsetkych srdecne zdravim!
>:
>: Mam na formulari DBGrid a nejake tlacitka. Ked stlacim tlacitko
Pridaj,
>: otvori sa novy,
>: mensi formular s niekolkymi Editmi a tlacitkami Cancel a OK.
>:
>: Po vyplneni tychto Editov udajmi a naslednom stlaceni tlacitka OK, by
sa
>: mali tieto udaje zapisat do Databazy Paradox, ktora je prave otvorena
a
>: nacitana v DBGride na hlavnom formulari.
>:
>: Nejak mi to nefunguje, a nechcem to robit cez DBNavigator, poradte mi
>: prosim.
>:
>: Ak mozete, poslite mi kusok kodu, nech si to mozem prejst.
>:
[Peter Ondras: ]
Pri stlaceni OK zavolaj <NAZOV TABULKY>.POST (napr.: Table1.Post)
>: -------------------------------------------------------------
>:
>: Do jedneho z Editov na tom mensom formulari potrebujem vypisat pri
>: vytvarani formularu aktivne prihlaseneho uzivatela.
>: Ziskavam to funkciou
>:
>: GetUserName
>:
>: Ked si to dam vypisat cez zpravu, tak je to ok, ale ked urobim
nasledovne
>:
>: DBEdit1.Text := UserName;
>:
[Peter Ondras: ] Vlastnost DBEditu DATASET nastav na DATASET priradeny k
potrebnej tabulke. (napr. DSTable1). Vlastnost FIELDNAME nastav na nazov
potrebneho pola (napr. UZIV). Data sa ti do DBEditu uz potom natiahnu
same. Samozrejme musi byt otvera tabulka.

>: nezobrazi sa v Edite uzivatel, ale natiahne uzivatela z aktivnej
tabulky
>: na
>: hlavnom formulari zo stlpca "Login".
>:
[Peter Ondras: ] Aha. Sorry. Takze vyzerato tak, ze uz tam data mas.
Natiahnute. Tu by asi bolo dobre porozmyslat nad pouzitim obycajneho
EDITU a v nom postupovat tak ako pises vyssie Edit1.Text:=UserName. Po
stlaceni OK ak potrebujes USERNAME zapisat do tabulky tak pouzi
Table1<NAZOV POLA>.Value:=UserName (Napr. Table1Uziv.Value:=UserName).
Po tom ako rucne vyplnis polia este zavolaj Table1.Post.

>: Ako to mam riesit?
>:
>:
>: Dakujem,
>: alex
>:
>:
>:
>: Delphi 3 Client/Server Suite - Win2000 Prof Cz
>:
>:
>: